home *** CD-ROM | disk | FTP | other *** search
/ Aminet 21 / Aminet 21 (1997)(GTI - Schatztruhe)[!][Oct 1997].iso / Aminet / comm / www / IV24WebCam.lha / webcam.rexx < prev   
OS/2 REXX Batch file  |  1997-08-22  |  3KB  |  101 lines

  1. /* 
  2.  
  3. ARexx GVP IV24 Web Cam 
  4. By Casey Halverson (cmdo@gte.net)
  5. Copyright 1997, All Rights Reserved
  6.  
  7. Webcam software which makes use of the GVP IV24 video board/genlock hardware
  8.  
  9. You can find me on IRC under the nick Commando on Undernet - #Virii,
  10. EFNet - #WoT, and AmigaNet/ANet - #Amiga (whiterose.net 6667)
  11.  
  12. */
  13.  
  14. /* Configuration Settings */
  15.  
  16. /* All directories need a trailing '/' */
  17.  
  18. signal on BREAK_C
  19.  
  20. location="ram:webcam/"            /* Location of the web-cam directory */
  21. temp="ram:"                /* Temp image capture directory      */
  22. index="internet:www/webcam.html"    /* Webcam HTML document              */
  23. log=1                    /* Display log information           */
  24. time=120                /* Time delay between captures       */
  25.  
  26. imagecon="work:gfxcon"                /* Image Converter           */
  27. imagearg="FORMAT gif SIZE 320 200 COLORS 256"    /* Image Converter Arguments */
  28.  
  29. progname="webcam.rexx"            /* If you ever change the program
  30.                        name for some reason, make sure 
  31.                        you change this as well.  More 
  32.                        about this on the next comment    */
  33.  
  34.  
  35. /*
  36.  
  37. This is some nasty handling, but setting the stack in address command doesn't
  38. work out at all.  This will set the stack, then start the program with an 
  39. argument flag to avoid a constant loop of quiting and loading.  This won't
  40. run from workbench, or execute a command unless modified.
  41.  
  42. */
  43.  
  44. a=arg(1)
  45. if a="STACK" then signal stack_set
  46.  
  47. /* This is backwards due to the FILO format of the CON/shell */
  48.  
  49. push "rx "||progname||" STACK"
  50. push "stack 30000"
  51. exit
  52.  
  53. stack_set:
  54.  
  55. say ""
  56.  
  57. /* Setup the directory and HTML file */
  58.  
  59. if exists(location)=0 then address command "c:makedir >NIL: "||substr(location,1,length(location)-1)
  60. address command "c:copy "||index||" "||location||" >NIL:"
  61.  
  62. main:
  63.  
  64. if exists("ram:stopcam")=1 then exit
  65. if log=1 then say time()||" "||date()||" Digitizing"
  66.  
  67. /* Tell IV24CP via ARexx to digitize */
  68.  
  69. address REXX_IV24CP
  70. IV24CP_FILE "ram:temp"
  71. IV24CP_RGB EXTERN
  72. IV24CP_FREEZE ON
  73. IV24CP_DIGITIZE
  74. IV24CP_FREEZE OFF
  75. IV24CP_RGB AMIGA
  76.  
  77. if log=1 then say time()||" "||date()||" Converting"
  78.  
  79. /* 
  80.  
  81. This converts the image to a temp file, and when it is completed converting,
  82. deletes the old web cam image, and renames the new one.
  83.  
  84. */
  85.  
  86. address command imagecon||" >NIL: "||temp||"temp.0001 TO "||location||"cam_temp.gif "||imagearg
  87.  
  88. address command "c:delete "||location||"cam.gif >NIL:"
  89. address command "c:rename "||location||"cam_temp.gif "||location||"cam.gif >NIL:"
  90. address command "c:delete "||temp||"temp.next >NIL:"
  91.  
  92. if log=1 then say time()||" "||date()||" Picture online"
  93.  
  94. address command "c:wait "||time
  95.  
  96. signal main
  97.  
  98. BREAK_C:
  99. say "*** Control C detected -- Stopping webcam"
  100. exit
  101.